Skip to content

Add list_subjects MCP tool with subject aliases - #608

Merged
PianoNic merged 2 commits into
mainfrom
feature/603_McpListSubjects
Nov 12, 2026
Merged

PianoNic merged 2 commits into
mainfrom
feature/603_McpListSubjects

Conversation

@PianoNic

Copy link
Copy Markdown
Member

Summary

  • New read-only tool list_subjects: the user's subjects from their own school data (one entry per class and school account) with the teacher where the school passes it on, every name the subject goes by, matching Teams channels and OneNote notebooks or sections (confidence exact, alias or fuzzy), and the next and last assessment. An optional subject returns only matching subjects, whatever name or language the user used, and echoes the search names (query.aliases) so they can be passed to search as terms.
  • SubjectAliases is the shared name table: common Swiss subjects in DE/FR/IT/EN with abbreviations (Mathe / Mathematik / MA / maths, W&R / WuR, GP, physique / fisica, ABU, EPS and more) plus normalisation of case, accents, punctuation, &, and year or class prefixes (Mathe 4. LJ, BM23d Mathematik). Abbreviations of up to three letters only match a whole name.
  • Permissions per source: the tool needs School accounts read; exams need Exams read, the grade fallback for the last assessment needs Grades read, teacher names (from lesson notes) need Calendar read, Teams channels need Drive read (same as list_teams), OneNote needs OneNote read. What is not allowed is left out and listed in skipped.
  • Bounded: at most 12 teams get a channel lookup and 8 notebooks a section lookup, 4 calls in parallel, 20 second timeout; partial is set when a limit hits or a source fails.
  • Helply's prompt now resolves the subject with list_subjects first and keeps the manual lookup as fallback.

Closes #603

@PianoNic PianoNic added the enhancement New feature or request label Nov 12, 2026
@PianoNic
PianoNic merged commit 512f4b1 into main Nov 12, 2026
2 checks passed
@PianoNic
PianoNic deleted the feature/603_McpListSubjects branch November 12, 2026 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MCP list_subjects: the user's merged subject map

1 participant